System to design and/or update programs for industrial devices assigned to the operator interface and/or to manage machines and/or plants for industrial automation

ABSTRACT

System to design and/or update programs for the operator interface of machines and/or plants that comprises at least one first calculation device dedicated to the management of a machine and/or plant, which contains at least one application program to manage the human-machine interface (HMI) of the machine and/or plant, and a second calculation device to execute a software, or development environment, to create a project file, wherein on the first calculation device and on the second calculation device respective communication programs are installed, suitable to transfer the project to the first calculation device, where the application program for the management of the HMI interface displays the project by means of a suitable OPC UA standard information model, by means of which it is possible to make modifications to the project dynamically, without interrupting the execution of the human-machine interface program, and so that every modification to the project, and therefore to the human-machine interface program, is immediately displayed and used by the human-machine interface.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims benefit of and is a National Stage entry fromPCT Application No. PCT/IT2019/050109, filed on May 21, 2019; whichclaims priority to and benefit of Italian Application No.IT102018000005542, filed on May 21, 2018, both of which are entitled“System to Design and/or Update Programs for Industrial Devices Assignedto the Operator Interface and/or to Manage Machines and/or Plants forIndustrial Automation”, both of which are herein incorporated byreference in their entirety.

FIELD OF THE INVENTION

The present invention concerns a system to design and/or developprograms for industrial devices assigned to the human-machine interface(HMI) and/or assigned to control machinery and/or plants for industrialautomation.

The invention also concerns a method to update the programs executed onthe industrial devices.

In particular, the invention concerns a system and a connected methodboth to manage the modifications and also the updates to the programsthat allow an operator to interact with the machines and/or with theautomation plants.

More generally, the present invention is applied in developing andupdating all application programs of systems that require and/or allowhuman-machine interactions in the industrial and other fields.Hereafter, for ease of description, we will refer to these ashuman-machine interfaces (HMI).

BACKGROUND OF THE INVENTION

In the field of industrial automation, but also in other fields of theart, it is known to use hardware systems complete with applicationprograms that allow an operator to interact and/or interface with aplant and/or machine, through a display, a keyboard, a mouse and/ortouchscreen.

When manufacturers and/or the system integrators design any automationmachinery and/or plant they tend to develop an application program thatcan satisfy customer requirements as much as possible. This means thateventually it is necessary to meet needs that involve differentfunctionalities and/or configurations of the machine and/or plant.

No matter how exhaustive the initial analysis, it is during theinstallation and testing step that both further requests and alsopossible additional needs emerge.

These additional needs require intervention with a further customizationof the application programs originally developed. Subsequent requests,or new identifications, create difficulties for the machinemanufacturers and/or system integrators, as often the people assigned toinstallation and testing activities do not have the skills and knowledgeof the application designers.

To design modifications and/or new functionalities the current state ofthe art provides to use a special software, called integrateddevelopment environment (IDE).

The software is known for the development of a so-called project filethat defines the functionalities of the HMI application program and isnormally installed on a different computer from the HMI device of themachine and/or plant assigned to execute the application program.

The new project file is uploaded, with the corresponding modalities, onthe HMI device of the machine or plant, according to the modalitiesrequired by the hardware unit.

A program called“runtime” is normally installed in the hardware unit,which executes the project file itself. The computers on which the IDEis installed, which are used to develop the application project, arenormally different from the computers installed on the machines and/orplants, such as HMI/control units.

Computers used to develop projects are normally office PCs with highprocessing capacity performance. On the other hand, the characteristicsof the computers dedicated to the HMI and control unit are definedspecifically for each different type of machine and/or plant, payinggreat attention to the price/performance ratio. It should be rememberedthat these dedicated computers have to be able to withstand theindustrial environment in relation to temperature, humidity, vibrationsand resistance to disturbances.

In any case, it is always possible, in relation to the complexity of theHMI application and the resources available, to install in theHMI/control unit both the IDE and also the runtime, which contains a setof functional modules assigned to executing each of the functionalitiesof the HMI application.

The need to update the control unit with modifications to existingfunctionalities or with additions of new functionalities to theapplication program often causes continuous downtimes. The downtimes candelay even considerably the final testing of the machine and/orinterrupt production even for economically unacceptable times. Thesedelays, consequently, cause losses of production days that can result inboth payment delays and also canceled orders. These are just some of thedisadvantages of the state of the art that are evident and occur aboveall when the users of the machines and/or plants ask for customizationsin the installation and testing step.

US 2017/0060726 describes a solution of the state of the art to providea web-based programming environment to facilitate programming, uploadingand debugging in an industrial automation controller.

There is therefore the need to provide a new method to update one ormore programs to be executed in a control unit of a machine and/orplant.

In particular, one purpose of the present invention is to define amethod to update the application program, uploaded and executed on theHMI/control unit of the machine and/or plant, which allows to makemodifications or to add or integrate new functionalities directly fromthe unit itself. All without needing to have the IDE available, andwithout needing to stop the machines and/or plants.

Another purpose is to provide a method which allows to execute atemporary update of the application program, so that the modificationsor additions are valid only for a period, that is, their termination islinked to a specific event.

Temporary updating, for example, is very useful in cases where there isa desire to test the modifications and/or the new functionalities beforedeciding whether to definitively consolidate the modification.

The Applicant has devised, tested and embodied the present invention toovercome the shortcomings of the state of the art and to obtain theseand other purposes and advantages.

SUMMARY OF THE INVENTION

The present invention is set forth and characterized in the independentclaims, while the dependent claims describe other characteristics of theinvention or variants to the main inventive idea.

According to the invention, a system to design and/or update programsfor operator interfaces of machines and/or plants comprises at least onefirst calculation device dedicated to the management of a machine and/orplant, which contains at least a software to manage the human-machineinterface (HMI) of the machine and/or plant, and a second calculationdevice to execute a software, or development environment, to create aproject file, which contains the functional description of the HMIprogram. Respective communication programs are installed on the firstcalculation device and on the second calculation device.

The second calculation device comprises means to describe thecharacteristics of the project file, which, after being transferred tothe calculation device and executed on the calculation device, displaysan information model, consisting of a series of nodes and relationsbetween nodes, descriptive of the HMI project.

By means of interfaces and standard instructions between software, theHMI project can be modified interacting with the information model whilethe HMI program is being executed on the calculation device.

Furthermore, in accordance with the above purposes, a system to designand/or update programs of the HMI/control unit of a machine and/orplant, or also of an automation system, according to a first formulationcan provide a second computer in which the IDE is installed.

According to the invention, with the IDE it is possible to makemodifications or additional integrations and send them via a known modeto the destination unit. Known modes can be, for example, a local orremote Ethernet network, or a USB key, or other known or usable system.

If the characteristics of the destination unit allow it, it is alsopossible to upload the IDE directly on the HMI/control unit.

As indicated, the program called Runtime is installed in the HMI/controlunit of the machine and/or plant, that is, also in the automationsystem.

The program is a set of functional modules, among which, by way of anon-limiting example: the graphic interface module; the alarm managementmodule; the recipe management module; and the module to managecommunications toward the fieldbus, etc.

One or more of these modules executes the application program developedwith the IDE, consequently interacting with the assigned components ofthe machines and/or plant.

According to a variant, the communication module of the known type,which operates toward the fieldbus, also comprises the OPC UA protocolwhich provides a secure and encryptable communication with certificates.

According to a further variant, the runtime program comprises the OPC UAclient functionality, which allows to communicate with the affectedcomponents of the machines and/or plant through the communicationprotocol defined by the OPC UA standard, or other comparable.

According to a variant of the invention, the runtime program alsocomprises the OPC UA server functionality which allows to display thevalues relating to the variables under control to other affectedcomponents, which implement the OPC UA client standard.

The invention, through a structured extension of the OPC UA standardinformation model, allows to display all the functionalities thatcharacterize the HMI project in its entirety by means of standardizedindications, such as Object Type, Object, Variable Type, Variable,Method, Reference Type, Reference, as described by the OPC UA standard.

As a result, the runtime is able not only to analyze and interpret theproject data that define the HMI application, but also to generateadditional information.

According to a further variant, the additional information can describeall the properties of each individual functionality of the HMI project.

It is a variant of the invention that one or more of said properties aredisplayed by the OPC UA server integrated in the runtime, extending theOPC UA standard information model with further OPC UA nodes, maintainingtotal compatibility with the current situation.

It should be understood that the concepts of the present invention arenot limited to the use of the OPC UA standard, although reference willbe made to this in the following description and claims. In fact, otherstandards with comparable or equivalent characteristics can also beused.

According to one embodiment of the invention, the functionalcharacteristics of the project are described through the OPC UA nodes.

The nodes allow to exchange information, in terms of both values andalso semantics, between devices enabled for communication by means ofthe OPC UA standard.

Two software that use the OPC UA standard can therefore exchangeinformation between them, both if they are being executed on the samecomputer, and also if they are located on two remote computers connectedto each other in a known manner.

Embodiments of the present invention use and extend the OPC UA standardin order to create a series of “Object Types”, provided with a series ofInstance Declarations, and more generally OPC UA nodes, which describetheir characteristics. The OPC UA nodes define all the objects of an HMIproject. It is therefore possible to develop the information model ofthe project file so that it is compatible with the OPC UA standard.

The Instance Declarations can in turn be extended to add possiblefurther characteristics to the Object Types. In other words, thecharacteristics of an HMI project can be modified by acting on theObject Types and on the Instance Declarations, and more generally on theOPC UA nodes that describe them.

According to one aspect of the invention, by means of these new ObjectTypes it is possible to modify and/or update the HMI project/applicationdirectly on the Runtime installed on the HMI/control unit of the machineand/or plant. The modification, according to the invention, maintainsfull compatibility with the OPC UA standard.

According to a further aspect of the invention, the modifications and/orupdates do not require the use of the IDE.

In particular, by means of standard mechanisms of this communicationspecification, the invention allows to act on the OPC UA nodes, forexample creating them, eliminating them or changing their attributes andproperties. In this way, the characteristics of the project can bemodified by acting on the information model of the HMI project displayedby the runtime OPC UA server.

According to some embodiments of the present invention, the runtime isable to detect if modifications have been made to the HMI projectthrough the OPC UA nodes and implement them immediately. Consequently,there is the opportunity to update the functionalities of theapplication executed by the control unit without it being necessary torestart the runtime.

An example of a possible modification of the HMI project is obtained byacting on the OPC UA nodes that describe the information to be exchangedwith the machinery controller (usually a PLC).

According to a further variant, the present invention is not limited tothe possibility of modifying the OPC UA nodes that contain the values ofthe descriptive variables of the machine and/or plant exchanged with themachine and/or plant controller, but it allows the possibility ofmodifying any other element that is part of the user interface project,such as for example alarms, recipes, graphic objects on the screens andsuchlike.

A possible example of modification of the variables exchanged with themachine and/or plant controller is provided below.

The variable usually has the following characteristics, among manyothers:

-   -   Device to control the machine (for example PLC) in which the        value to be associated with the variable is present.    -   The type of datum that this variable can take: it is normally an        integer or a string, but other known types of data are also        used.    -   Memory address of the control device (PLC) where the value to be        assigned to the variable is found.

According to the present invention, while the project is being executedby the runtime, it is possible to modify the project by creating OPC UAnodes which describe variables exchanged with the machine and/or plantcontroller that were not provided during the design step, for example inrelation to the modification of the functionalities of a PLC.

The invention allows to modify the characteristics of the nodesassociated with the variables exchanged with the PLC so that the userinterface adjusts and adapts to the modification.

In this way, the update of the program being executed on the machineand/or plant can occur even without interrupting the functioning of themachine and/or plant itself.

The exemplification indicated above relates to the communication nodestoward the machinery controller (PLC), but according to the invention,it can be extended to any element of the HMI project, such as forexample a graphic element of the UI (User Interface), or an alarm, orany other characteristic both functional and also visual of the HMIproject.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other characteristics of the present invention will becomeapparent from the following description of some embodiments, given as anon-restrictive example with reference to the attached drawings wherein:

FIG. 1 schematically shows an embodiment of a system to design and/orupdate programs for the operator interface of machines and/or plantsaccording to the present invention.

To facilitate comprehension, the same reference numbers have been used,where possible, to identify identical common elements in the drawings.It is understood that elements and characteristics of one embodiment canconveniently be incorporated into other embodiments without furtherclarifications.

DETAILED DESCRIPTION OF SOME EMBODIMENTS

The detailed description is given by way of example only and does notexhaust possible implementations of the invention. Embodiments of thepresent invention concern a system to design and/or update programs forthe operator interface of machines and/or plants, and is indicated as awhole by the reference number 10.

The design system 10 comprises at least one first calculation device 11applied, for example integrated or embedded, on the machine and/orplant, and a second calculation device 12 on which the specific software(or development environment 20) is executed.

The development environment 20 allows a user to define a project file 26of the operator interface of a machine and/or plant.

In particular, in the project file 26 all the functionalities that theuser interface of the machine and/or plant needs to have are described.

These functionalities can refer, for example, to the functionalities ofthe control devices with the corresponding variables and controlparameters, as well as to all aspects connected to the graphic interfacewith the user.

It should be noted that the second calculation device 12 is representedhere as a component separate from the first calculation device 11.

However, the considerations set forth below also apply if there is asingle device suitable to execute both functions.

In particular, the two devices 11 and 12 are kept separate in the eventthat the first calculation device 11 does not have sufficient hardwareresources to execute the development environment 20.

The first device 11 is used to execute a management program, calledruntime program 21, of the interface between the user and the machineand/or plant, the runtime program comprising a control unit 22consisting of a plurality of modules 23.

Each module 23 interacts with one or more functionalities of the machineand/or plant, as will be better described below.

According to one embodiment of the invention, the project file 26defines the functionalities of the various modules 23, with themodalities explained below.

In the preferred embodiment, the project file 26 is described as aseries of OPC UA nodes and relations between OPC UA nodes. From projectfile 26, the runtime is able to develop an information model (26 c) ofthe HMI project and display it by means of an OPC UA server 28.

In the drawing of the embodiment, with reference to number 26 a theproject file 26 shared, or transmitted, through a communication channel13 is identified. The communication channel 13 connects the twocalculation devices 11, 12 in a known manner.

With reference to number 26 b a project file 26 is indicated, created inthe second calculation device 12 and transferred by known means, forexample by means of a USB key, to the first calculation device 11.

According to a further aspect of the present invention, aftertransferring the project file 26, and after the OPC UA server 28 hasdisplayed the project through the OPC UA information model 26 c, it ispossible to modify the information relating to the HMI project by meansof instruction packets, for example Ethernet telegrams, defined by theOPC UA standard. In particular, by means of said instructions it ispossible to modify the characteristics of the OPC UA nodes and therelations between said nodes, modifying the information model 26 c ofthe HMI project and therefore the project itself.

According to some embodiments of the invention, to correctly display theinformation model 26 c, the runtime program 21 uses a program called OPCUA server 28.

In particular, the invention provides that it is possible to describe,and therefore modify and/or update, the project file 26 no longer bymeans of a file, but acting on a series of nodes and relations betweenOPC UA nodes displayed by the OPC UA server 28 of the management program21.

Although the present invention describes the use of the specific OPC UAstandard to exchange information between enabled devices, it is withinthe scope of the invention to use also other specifications, standard ornon-standard, provided they are compatible with the functions to beperformed and provided they can be managed with the calculation devices11 and 12 used.

According to one embodiment of the invention, upon activation of thefirst calculation device 11 a specific software is automaticallylaunched, called update program 29.

The update program 29 interrogates, or is interrogated by, thedevelopment environment 20 of the second calculation device 12.

When the presence of an update project file 26 is communicated to theupdate program 29, the management program 21 activates its uploading andexecution.

Then the runtime program 21 starts a program called loader 27.

The loader program 27 has the task of reading the definitions of the OPCUA nodes and the relations between the OPC UA nodes from the update file26, as well as that of uploading into the OPC UA server 28 theinformation model 26 c suitable to describe all the OPC UA nodes and therelations between the nodes of the specific project file 26. Thisfunctionality is a consequence of the fact that, according to theinvention, the OPC UA standard, in particular the so-called informationmodel of the standard, has been extended.

Said extension serves to describe the project file 26, using the OPC UAnodes and the relations between said nodes to display the project file26 through the OPC UA server 28.

In particular, and more specifically, the extension of the OPC UAinformation model provides to create a series of OPC UA nodes of thetype “Object Type”, “Object”, “Variable Type”, “Variable”, “Method”,“Reference Type”, “Reference”, which allow to define all the elements ofan HMI project.

Acting on the OPC UA nodes, possibly executable, made in the finalizedmanner, number and type, it is therefore possible to modify the projectwithout any limitation, remaining compatible with the OPC UA standard.

When the loader 27 has finished its activity, the OPC UA server 28,through its information model 26 c, is able to display the entireproject 26 prepared in the development environment 20.

The various modules 23, which together constitute the control unit 22,are configured to read, each for the part for which they areresponsible, a part of the project file 26 prepared in the developmentenvironment 20. To do so, each module reads the characteristics from theinformation model 26 c uploaded by the loader 27 into the OPC UA server28.

The modules 23 can comprise, for example, but not exclusively, alarmmodules 23 a, OPC UA client modules 23 b, communication drivers towardcontrol devices such as PLCs 23 c, dataloggers or datastores 23 d,recipes 23 e, user management 23 f, and others.

Each of the modules 23 is suitably configured to know, and thereforeacquire, the part of the project file 26 described by the informationmodel 26 c and displayed by the OPC UA server 28 that is relevant tothem. In this way, after reading, each module 23 begins to execute,possibly updating, modifying and/or implementing its ownfunctionalities, following the indications of the project file 26.

We will now supply some possible examples of modifications of theproject file 26 uploaded in the information model 26 c of the OPC UAserver 28.

These examples involve:

-   -   Adding graphic elements to an interface panel, such as a label,        a trend, etc.;    -   Moving a graphic object of a panel;    -   Modifying a translation of a text;    -   Changing address of a variable of the PLC.

Based on what has been described above, the modes with which the updateoccurs mean that any characteristic of the project file 26, acting onthe information model 26 c, can be modified.

It is also possible to delete any element of the project, to add anyelement of the project, and to modify any property of any element of theproject.

According to an important aspect of the present invention, themodifications described above can be made while the project itself isbeing executed on the operating machine and/or plant.

The modifications made to the project occur, in fact, through changesmade in the information model 26 c, as indicated above, and can beimplemented immediately by the various modules 23 of the managementprogram 21. The modules 23 have the task of applying the modificationsmade to the project by means of variations to the information model 26c.

According to a further possible solution, the OPC UA server 28 allowsmodifications to the information model 26 c only if the user connectedto the OPC UA server has the appropriate authorizations. It is possibleto classify different types of users based on said authorizations:

-   -   users who do not have the right to view and modify the        information model 26 c;    -   users who have the right to view the information model 26 c but        not to modify it;    -   users who have the right to view and modify the information        model 26 c.

According to a further possible solution, the authorizations to userscan also be connected in relation to only one part of the informationmodel 26 c. This allows to make partial modifications to the projectfile 26.

Alternatively, according to a variant of the invention, saidauthorizations and the parts of the information model 26 c can becombined together in any way.

By way of non-exhaustive example, in this case it is possible to haveusers with the following authorizations:

-   -   to view all the information model of the project 26 c, but be        able to modify only a part of it    -   to view a part of the information model 26 c and not be able to        modify it    -   to view a part of the information model 26 c and be able to        modify it.

According to a further possible solution, the modifications to theinformation model, implemented by the control unit 22, can beimplemented temporarily, and therefore are valid only until thecorresponding machine and/or plant is switched off.

According to a further possible solution, the modifications to theinformation model, implemented by the control unit 22, can be madepersistent.

It is clear that modifications and/or additions of parts may be made tothe management system and update method as described heretofore, withoutdeparting from the field and scope of the present invention.

It is also clear that, although the present invention has been describedwith reference to some specific examples, a person of skill in the artshall certainly be able to achieve many other equivalent forms, havingthe characteristics as set forth in the claims and hence all comingwithin the field of protection defined thereby.

In the following claims, the sole purpose of the references in bracketsis to facilitate reading: they must not be considered as restrictivefactors with regard to the field of protection claimed in the specificclaims.

1. A system, comprising: a first computing device configured to executea first computer program for a development environment, wherein thedevelopment environment is configured to create a project filecomprising a functional description of the first computer program; and asecond computing device configured to execute a second computer programconfigured to: receive the project file from the first computing device;execute the project file; display an information model representative ofa series of nodes and one or more relationships between the series ofnodes in response to receiving the project file, wherein the series ofnodes and the one or more relationships are descriptive of the projectfile; and receive an input via the information model, wherein the inputis configured to modify the project file while the project file is beingexecuted.
 2. The system of claim 1, wherein the first computing deviceis configured to execute a first communication program to enabletransfer of the project file from the first computing device to thesecond computing device via a communication channel, and wherein theproject file corresponds to an operator interface application.
 3. Thesystem of claim 1, wherein the first computer program comprises aruntime program that comprises a loader program and an open platformcommunication unified architecture (OPC UA) server program, wherein theloader program, when executed, is configured to: read a respectivedefinition of each node of the series of nodes and of each of the one ormore relationships of the project file; and upload the information modelindicative of the respective definition of each node of the series ofnodes and of each of the one or more relationships of the project fileinto the OPC UA server program.
 4. The system of claim 3, wherein theOPC UA server program, when executed, is configured to display theinformation model of the project file prepared in the developmentenvironment.
 5. The system of claim 3, wherein the information model isconfigured to be modified by an OPC UA client.
 6. The system of claim 1,wherein the second computing device comprises an industrial personalcomputer, an office personal computer, or a tablet, on which the secondcomputer program is executed.
 7. The system of claim 1, wherein thefirst computing device is incorporated in a machine operating in anindustrial plant and is configured to execute the first computerprogram.
 8. The system of claim 1, wherein the first computing devicecomprises a mobile device, and wherein the mobile device comprises atablet device or a mobile phone.
 9. The system of claim 1, wherein thefirst computing device comprises a control unit comprising a set ofmodules, wherein each module of the set of modules is configured tointeract within or more determinate functions of a machine operating inan industrial plant.
 10. The system of claim 1, wherein the project fileis transferred from the first computing device to the second computingdevice via one or more instruction packets defined by OPC UA standard.11. The system of claim 1, wherein the first computing device and thesecond computing device are distinct and separate components configuredto communicate with each other via a local network or a remote network.12. The system of claim 1, wherein the first computing device and thesecond computing device are incorporated in a single component thatincludes one or more functionalities of the first computing device andthe second computing device.
 13. The system of claim 1, wherein thesecond computing device, upon executing the project file, is configuredto extend the information model to one or more OPC UA nodes.
 14. Thesystem of claim 13, wherein the second computing device is configured toextend the information model to the one or more OPC UA nodes bygenerating one or more object types associated with a series of instancedeclarations, wherein the one or more object types are configured to bemodified to add one or more characteristics to characterize the projectfile.
 15. A method, comprising: receiving, via a processor, a projectfile from a computing device, wherein the project file is created in adevelopment environment, and wherein the project file comprises a seriesof nodes and one or more relationships between the series of nodes thatdescribe one or more functionalities of an operator interfaceapplication for an operator interface; reading, via the processor, aplurality of definitions of the series of nodes and of the one or morerelationships between the series of nodes; uploading, via the processor,an information model that describes the series of nodes and the one ormore relationships between the series of nodes into an open platformcommunication unified architecture (OPC UA) server program, wherein eachnode of the information model is modifiable and extendable; causing, viathe processor, the display of the information model; and receiving, atthe processor, an input via the information model that modifies theproject file while the project file is being executed.
 16. The method ofclaim 15, comprising transferring information related to updating theproject file, to the processor, via instructions packets defined by anOPC UA standard.
 17. The method of claim 15, wherein modifying theproject file occurs without use of the development environment.
 18. Oneor more non-transitory computer-readable media encoding one or moreprocessor-executable routines, wherein the one or more routines, whenexecuted by a processor, cause acts to be performed comprising:receiving a project file from a computing device, wherein the projectfile is created in a development environment, and wherein the projectfile comprises a series of nodes and one or more relationships betweenthe series of nodes that describe one or more functionalities of anoperator interface application for an operator interface; reading, viathe processor, a plurality of definitions of the series of nodes and ofthe one or more relationships between the series of nodes; uploading,via the processor, an information model that describes the series ofnodes and the one or more relationships between the series of nodes intoan open platform communication unified architecture (OPC UA) serverprogram, wherein each node of the information model is modifiable andextendable; causing, via the processor, the display of the informationmodel; and receiving, at the processor, an input via the informationmodel that modifies the project file while the project file is beingexecuted.
 19. The one or more non-transitory computer-readable media ofclaim 18, wherein modifying the project file occurs without use of thedevelopment environment.
 20. The one or more non-transitorycomputer-readable media of claim 18, wherein the operator interface isassociated with an additional computing device that is distinct andseparate from the computing device, and the additional computing deviceand the computing device communicate with each other via a local networkor a remote network.